package com.office.stacks.mine.mapper;

import com.office.stacks.pubilsh.domain.Tasks;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;

import java.util.List;

/**
 * 我的任务Mapper接口
 * 
 * @author 柒月
 * @date 2025-05-23
 */
@Mapper
public interface HurtlessMapper
{

    /**
     * 查询我的任务列表
     *
     * @param tasks       我的任务
     * @param loginUserId 当前的登录用户的id
     * @return 我的任务集合
     */
    public List<Tasks> selectTasksList(@Param("tasks") Tasks tasks,@Param("loginUserId") Long loginUserId);

    /**
     * 新增我的任务
     *
     * @param ids 我的任务id
     * @return 结果
     */
    public int determineTasks(@Param("ids") Long[] ids);


    /**
     * 提交我的任务
     *
     * @param id     我的任务主键
     * @param fileId 文件id
     * @return 结构
     */
    @Update("update tasks set status = 2 , file_id = #{fileId} where id = #{id}")
    public Integer submitTasksById(@Param("id") Long id, @Param("fileId") Long fileId);


    /**
     * @param fileId 修改表中的文件id为null
     * @return 结果
     */
    @Update("update tasks set file_id = null where file_id = #{fileId}")
    public int updataFileById(Long fileId);
}
